package com.core.dao;

import java.util.Date;
import java.util.List;

import org.springframework.stereotype.Repository;

import com.core.base.dao.BaseHibernateDao;
import com.core.model.Roles;

/**
 * 角色DAO
 * 
 * @author pt-chenqw
 *
 */
@Repository("roleDAO")
public class RolesDAO extends BaseHibernateDao<Roles> {
	
	/**
	 * 查询所有的角色列表
	 * @return
	 */
	public List<Roles> getRoless(){
		return findAll("from Roles");
	}
	
	/**
	 * 根据ID查询角色信息
	 * @param id
	 * @return
	 */
	public Roles getRolesByID(Integer id) {
		String hql = "from Roles where id = ?";
		return findOne(hql, id);
	}

	/**
	 * 更新角色信息
	 * @param role
	 */
	public void updateRoles(Roles role) {
		Roles roles = getRolesByID(role.getId());
		roles.setStatus(role.getStatus());
		roles.setUpdatetime(new Date());
		update(roles);
	}

	/**
	 * 删除角色信息
	 * @param id
	 */
	public void deleteRolesByID(Integer id) {
		Roles role = getRolesByID(id);
		delete(role);
	}

	/**
	 * 添加角色信息
	 * @param role
	 */
	public void addRoles(Roles role) {
		role.setCreatetime(new Date());
		role.setUpdatetime(new Date());
		save(role);
	}
	
	/**
	 * 根据角色编码查询
	 * @param roleCode
	 * @return
	 */
	public Roles getRolesByRoleCode(String roleCode){
		String hql = "from Roles where roleCode = ?";
		return findOne(hql, roleCode);
	}

}
